1. Field of the Invention
The present invention relates to a radio communication system using a timeout control, and more particularly, to a radio communication system capable of realizing a more effective timeout control by setting a timeout interval dynamically.
2. Description of the Related Art
FIG. 8 shows an exemplary configuration of a general radio communication system. As shown in FIG. 8, this radio communication system comprises radio base stations 100 and 102, radio terminals 104 and 106 connected with the radio base stations 100 and 102 via radio, respectively, and a data communication network 108 to which the radio terminals 104 and 106 are connected through the radio base stations 100 and 102. Then, a radio channel 110 is formed between the radio base station 100 and the radio terminal 104, and a radio channel 112 is formed between the radio base station 102 and the radio terminal 106.
In FIG. 8, the radio base station 100 and the radio terminal 104 are carrying out data transmission and reception through the radio channel 110 while the radio base station 102 and the radio terminal 106 are carrying out data transmission and reception through the radio channel 112, but these pairings can be changed as the radio terminals 104 and 106 move. Also, from viewpoints of the radio terminals 104 and 106, the radio base station to be a source of received data and the radio base station to a destination of the transmitted data can be different.
Through the radio channels 110 and 112, data communications using radio packets as defined by the protocols specific to the respective radio channels are carried out. In this case, in order to realize the data communications of the radio terminals 104 and 106 with terminals or servers (not shown) connected to the data communication network 108, there is a need for each one of the radio base stations 100 and 102 and the radio terminals 104 and 106 to have a frame-packet conversion unit. This frame-packet conversion unit converts data frames such as Ethernet frames or IP packets into radio packets for respective radio channels, and converts radio packets of respective radio channels into data frames.
FIG. 9 shows an exemplary configuration of the frame-packet conversion unit described above, which is directed to a case where it is assumed that the payload length of the radio packet is a fixed length of 48 bytes according to HIPERLAN/2 (High Performance Radio Local Area Network Type2) and the Ethernet frame as a data frame to be transmitted is allowed to have a length up to about 1500 bytes. In FIG. 9, this frame-packet conversion unit comprises a data frame transmission and reception unit 114, a padding field attaching unit 116, a radio packet generation unit 118, a radio packet transmission and reception unit 120, a data frame generation unit 122, and a padding field removing unit 124.
Here, the operation of the frame-packet conversion unit shown in FIG. 9 will be described with reference to FIG. 10, which explains the case of converting a data frame into radio packets (at a time of transmission), as well as the case of converting radio packets into a data frame 8 at a time of reception).
First, at a time of the transmission, the data frame transmission and reception unit 114 receives a data frame transmitted to the radio channel from the upper layer (Ethernet layer/IP layer). The radio packet generation unit 118 generates a plurality of radio packets by dividing the received data frame. Here, before that generation begins, the padding field attaching unit 116 determines a padding field region length and attaches a padding field to the data frame, for the purpose of making the payload length of the last radio packet equal to that of the other radio packets. The padding field region length is described as an information in a trailer, and the data frame transmission and reception unit 114 recognizes the padding field region in the data frame according to that description.
As described above, the data frame attached with the padding field region and the trailer will be divided into a plurality of radio packets by the radio packet generation unit 118.
FIG. 11 shows a processing procedure for the radio packet generation operation by the radio packet generation unit 118. In FIG. 11, while the radio packet generation unit 118 is in an idle state (step S101), when the data frame is received from the padding field attaching unit 116 (step S102), that data frame is divided to generate a plurality of radio packets (step S103), In this packet generation, the value of the last bit region provided in a header of the radio packet is determined as follows.
(a) A value “1” is set to a last radio packet constituting the data frame.
(b) A value “0” is set to the other packets.
Then, the radio packet generation unit 118 gives all the generated radio packets to the radio packet transmission and reception unit 120 (step S104). After that, the radio packet generation unit 118 returns to the idle state (step S101), and waits for the arrival of a new data frame.
Returning now to FIG. 10, the radio packets generated as described above will be given to the lower layer (radio datalink control layer) by the radio packet transmission and reception unit 120, and transmitted onto the radio channel.
On the other hand, at a time of the reception, the radio packet transmission and reception unit 120 receives the radio packets from the lower layer. The data frame generation unit 122 generates a data frame from the received radio packets.
FIG. 12 shows a processing procedure of the data frame generation operation by the data frame generation unit 122. In FIG. 12, while the data frame generation unit 122 is in an idle state (step S201), when a radio packet is received from the radio packet transmission and reception unit 120 (step S202), the payload information is extracted from the radio packet and inserted into a buffer (step S203). At a time of this extraction, if the last bit value of the received radio packet is “0” (step S204 FALSE), the arrival of the subsequent packet will be awaited, and whenever a radio packet is received from the radio packet transmission and reception unit 120 (step S206 TRUE), the payload information is extracted and attached to the information already stored in the buffer (step S207).
On the other hand, if the last bit value of the radio packet received from the radio packet transmission and reception unit 102 is “1” (step S024 TRUE and step S208 TRUE), the information stored in the buffer is extracted as a frame and given to the padding field removing unit 124 (step S212). After that, the data frame generation unit 122 returns to the idle state (step S201), and waits for the arrival of a new radio packet. Then, the padding field removing unit 124 removes the padding field region and the trailer from the received frame and gives the resulting frame to the data frame transmission and reception unit 114.
Now, in general, the radio communications is associated with the problem that they are prone to be affected by noises or interference radio waves and the received signal quality can be degraded considerably for this reason. As a result, a probability for the loss of radio packet becomes considerably higher compared with the case of communications using wired channels. The original data frame cannot be recovered when even one radio packet is lost, so that the entire data frame have to be discarded when such a radio packet loss occurs.
In order to detect such a loss of radio packet at early stage, there is a proposition to provide the so called timer at the data frame generation unit 122 of FIG. 9. Namely, as shown in FIG. 12, in addition to the processing procedure described above, the data frame generation unit 122 actually activates the timer after the timer reset if the last bit value of the received radio packet is “0” (step S204 FALSE). Then, whenever the radio packet with the last bit value of “0” is received (step S208 FALSE), the timer is re-activated (step S209). Note that, when the activated timer becomes timeout while waiting for the arrival of the subsequent radio packet (step S210 TRUE), it is judged that this radio packet is lost and all of the radio packets already received are discarded (step S211).
By executing such a timeout control, it becomes possible to detect the radio communication error at early stage. In particular, the timeout control is effective in detecting the loss of the last radio packet that constitutes the data frame.
As described, in the case of carrying out the data communications using radio channels in which the signal quality can be degraded considerably, it is possible to detect the radio packet loss at early stage by executing the timeout control by setting the timeout interval according to the data transmission rate of the data communications at the receiving side of the radio data communications.
However, the performance of the radio data communication system is significantly affected by the value to be set as the timeout interval. Namely, if the timeout interval is set to be extremely short, for example, there is a possibility for the timeout to occur before the completion of the reception even for the radio packet that is normally transmitted without being affected by the signal quality degradation. In this case, the timeout control would judge that this packet is lost and the original data frame would be discarded as a result. On the other hand, if the timeout interval is set to be extremely long, the time required for the receiving side to judge that the radio packet is lost on the radio channel would become very long so that the effect of the timeout control would be diminished.
Usually, in the case where there are a plurality of connections for carrying out communications with the same radio base station, the communications will be carried out by sharing the bandwidth that can be provided by that radio base station among these connections. In other words, the data transmission rate that can be provided at each connection will be different depending on the number of connections that are currently in communications. Thus, when the data transmission rate at each connection varies, it is desirable to use a system in which the timeout interval can be set flexibly according to the variation of the data transmission rate.